home *** CD-ROM | disk | FTP | other *** search
- PRT_LINE x1k1
- ╔════════════════╗
- ║ SYSTEM VECTORS ║
- ╔═════════╤═════════╤════════════╩════════════════╩════════════════════════════╗
- ║Address $│ Vector# │ Vectors ║
- ╟─────────┼─────────┼──────────────────────────────────────────────────────────╢
- ║ 100-13C │ 64-79 │ MC68901 ║
- ╟─────────┼─────────┼──────────────────────────────────────────────────────────╢
- ║ 380 │ │ valid if = $12345678 ║
- ║ 384-3A0 │ │ D0-D7 ║
- ║ 3A4-3BC │ Crash │ A0-A6 ║
- ║ 3C0 │ │ SSP ║
- ║ 3C4 │ Area │ #Vector in the 1rst byte and address of exception ║
- ║ 3C8 │ │ USP ║
- ║ 3CC-3E8 │ │ 16 words of the supervisor stack ║
- ╚═════════╧═════════╧══════════════════════════════════════════════════════════╝
- ╔══════════════════╗
- ║ SYSTEM VARIABLES ║
- ╔═════════╤═════════╤═══════════╩══════════════════╩═══════════════════════════╗
- ║Address $│ Size │ Useful System Variables ║
- ╟─────────┼─────────┼──────────────────────────────────────────────────────────╢
- ║ 426 │ L │ valids reset vector if = $31415926 ║
- ║ 42A │ L │ reset vector ║
- ║ 42E │ L │ RAM size ║
- ║ 432 │ L │ user memory bottom ║
- ║ 436 │ L │ user memory top ║
- ║ 444 │ W │ verify flag for disk writing ║
- ║ 452 │ W │ Vertical BLanking flag ║
- ║ 466 │ L │ Vertical BLanking counter ║
- ║ 454 │ W │ Vertical BLanking list length ║
- ║ 456 │ L │ Vertical BLanking list pointer ║
- ║ 484 │ B │ keyboard options(b0=click b1=repeat b2=bell b3=shift)║
- ║ 4BA │ L │ 200 Hz counter ║
- ║ 4EE │ W │ screen copy (-1:enable 0:screen copy 1-...:disable) ║
- ╚═════════╧═════════╧══════════════════════════════════════════════════════════╝
- ┌───────────────────┐
- │ EXCEPTION DRIVERS │
- └───────────────────┘
- Reset SP = not used
- Reset PC = reset instruction
- use reset vector if valid (return by A6)
- initialize periferal chips
- initialize BIOS
- execute ROM-Pack programs
- initialize TOS
- execute boot sector
- execute reset programs
- execute \AUTO\*.PRG
- execute Desktop program
-
- Bus Error = fill crash area , draw bombs and return to desktop
-
- Address Error = fill crash area , draw bombs and return to desktop
-
- Illegal Instructions = fill crash area , draw bombs and return to desktop
-
- DIV by 0 Instruction = do nothing
-
- CHK Instruction = fill crash area , draw bombs and return to desktop
-
- TRAPV Instruction = fill crash area , draw bombs and return to desktop
-
- Privilege Violation = fill crash area , draw bombs and return to desktop
-
- Trace = fill crash area , draw bombs and return to desktop
-
- $Axxx Instructions = used for graphism
-
- $Fxxx Instructions = used
-
- Non Reseted Interrupt = fill crash area , draw bombs and return to desktop
-
- Parasit Interrupt = fill crash area , draw bombs and return to desktop
-
- Horizontal BLanking = set the IPL mask to %011 to avoid this interrupt
-
- Vertical BLanking = inc $466 , change screen if necessary , test disk change
- execute VBL routines if ($452)<>0 (registers are saved)
- test for hardcopy
-
- TRAP Instruction = 1 used by TOS , 2 used by GEM-VDI & GEM-AES
- 13 used by BIOS , 14 used by XBIOS
-
- PRNT = fill crash area , draw bombs and return to desktop
-
- AUXI DCD = fill crash area , draw bombs and return to desktop
-
- AUXI CTS = fill crash area , draw bombs and return to desktop
-
- BLIT = fill crash area , draw bombs and return to desktop
-
- TIME D = used for auxiliary
-
- TIME C = used for 200 Hz interrupt and 50 Hz
- timer 200 Hz
- sound,click 50 Hz
- EVNT_TIME GEM 50 Hz
-
- IKBD/MIDI = used for this devices
-
- DISK = fill crash area , draw bombs and return to desktop
-
- TIME B = fill crash area , draw bombs and return to desktop
-
- AUXI TE = do nothing
-
- AUXI TRE = transmit a character
-
- AUXI RE = do nothing
-
- AUXI RRF = receive a character
-
- TIME A = fill crash area , draw bombs and return to desktop
-
- AUXI RI = fill crash area , draw bombs and return to desktop
-
- SCRN MM = reset
-